From: Aleksey Kladov Date: Sun, 9 Jul 2017 13:18:53 +0000 (+0300) Subject: Use the same logic for benches X-Git-Tag: archive/raspbian/0.35.0-2+rpi1~3^2^2^2^2^2^2^2~22^2~8^2~10^2~4 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/success//%22http:/www.example.com/cgi/success/?a=commitdiff_plain;h=4e9bf06919bfb284ebb7152cc18c6d75634d69a5;p=cargo.git Use the same logic for benches --- diff --git a/src/cargo/util/toml/targets.rs b/src/cargo/util/toml/targets.rs index 9c176f8e8..a3832062d 100644 --- a/src/cargo/util/toml/targets.rs +++ b/src/cargo/util/toml/targets.rs @@ -387,12 +387,13 @@ fn clean_tests(toml_tests: Option<&Vec>, fn clean_benches(toml_benches: Option<&Vec>, package_root: &Path) -> CargoResult> { + let inferred = inferred_benches(package_root); let benches = match toml_benches { Some(benches) => benches.clone(), - None => inferred_benches(package_root).into_iter().map(|(name, path)| { + None => inferred.iter().map(|&(ref name, ref path)| { TomlTarget { - name: Some(name), - path: Some(PathValue(path)), + name: Some(name.clone()), + path: Some(PathValue(path.clone())), ..TomlTarget::new() } }).collect() @@ -406,11 +407,9 @@ fn clean_benches(toml_benches: Option<&Vec>, let mut result = Vec::new(); for bench in benches.iter() { - let path = bench.path.clone().unwrap_or_else(|| { - PathValue(Path::new("benches").join(&format!("{}.rs", bench.name()))) - }); + let path = target_path(bench, &inferred, "bench", package_root)?; - let mut target = Target::bench_target(&bench.name(), package_root.join(&path.0), + let mut target = Target::bench_target(&bench.name(), path, bench.required_features.clone()); configure(bench, &mut target); result.push(target);